<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Microsoft.Cci.PeWriter</name>
    </assembly>
    <members>
        <member name="T:Microsoft.Cci.ITokenProvider">
            <summary>
            Provides methods that map metadata references onto PE file tokens.
            </summary>
        </member>
        <member name="M:Microsoft.Cci.ITokenProvider.GetTokenFor(Microsoft.Cci.IFieldReference)">
            <summary>
            Returns the metadata token value that is used instead of the given field reference when serializing metadata using the PE file format.
            </summary>
        </member>
        <member name="M:Microsoft.Cci.ITokenProvider.GetTokenFor(Microsoft.Cci.IMethodReference)">
            <summary>
            Returns the metadata token value that is used instead of the given method reference when serializing metadata using the PE file format.
            </summary>
        </member>
        <member name="M:Microsoft.Cci.ITokenProvider.GetTokenFor(Microsoft.Cci.ITypeReference)">
            <summary>
            Returns the metadata token value that is used instead of the given type reference when serializing metadata using the PE file format.
            </summary>
        </member>
        <member name="M:Microsoft.Cci.ITokenProvider.GetTokenFor(System.String)">
            <summary>
            Returns the metadata token value that is used instead of the given string when serializing metadata using the PE file format.
            </summary>
        </member>
        <member name="M:Microsoft.Cci.PeWriter.FoldStrings">
            <summary>
            Fills in stringIndexMap with data from stringIndex and write to stringWriter.  
            </summary>
        </member>
        <member name="M:Microsoft.Cci.PeWriter.ComputeSizeOfVersionString(System.Byte[])">
            <summary>
            returns a multiple 4 that is at least 12 and at most 256 and that is just big enough to hold the version string.
            </summary>
        </member>
        <member name="M:Microsoft.Cci.PeWriter.GetDefiningUnitReference(Microsoft.Cci.ITypeReference)">
            <summary>
            Returns a reference to the unit that defines the given referenced type. If the referenced type is a structural type, such as a pointer or a generic type instance,
            then the result is null.
            </summary>
        </member>
        <member name="M:Microsoft.Cci.PeWriter.GetCorrespondingMethodToken(Microsoft.Cci.IMethodDefinition)">
            <summary>
            Deals with the case where the given method is from a module that is being rewritten or merged into this.module.
            The method comes from the synchronization information for the current method and this information could still
            be that obtained from the PDB of the module being rewritten or merged.
            </summary>
        </member>
        <member name="T:Microsoft.Cci.PeWriter.StringIdx">
            <summary>
            Wraps a virtual string table index.
            An override to SerializeIndex does the resolving at the right time.
            </summary>
        </member>
        <member name="T:Microsoft.Cci.PeWriter.SuffixSort">
            <summary>
            Sorts strings such that a string is followed immediately by all strings
            that are a suffix of it.  
            </summary>
        </member>
        <member name="T:Microsoft.Cci.CustomSectionProvider">
            <summary>
            Called by the PEWriter to allow a plug-in to provide a custom section that will be stored in the PE file along
            with the sections that contain serialized metadata.
            </summary>
            <param name="peFileData">A somewhat random collection of values that can be useful to know about a PE file, but which cannot be obtained from a metadata model.</param>
            <param name="tokenProvider">A mapper from metadata objects to the tokens that will be used in the PE file being writtern.</param>
            <returns>An IPESection objet that is to be serialized into the PE file being written out by PEWriter (which is calling this delegate).</returns>
        </member>
        <member name="T:Microsoft.Cci.PEFileData">
            <summary>
            A somewhat random collection of values that can be useful to know about a PE file, but which cannot be obtained from a metadata model.
            These values can be persisted inside a custom section and help a reader of the custom section to quickly
            find values in the standard sections of the PE file. They can also be used to verify that the custom section matches to the PE file.
            </summary>
        </member>
        <member name="F:Microsoft.Cci.PEFileData.timeStamp">
            <summary>
            The time stamp that the PE writer will write into the PE file.
            </summary>
        </member>
        <member name="F:Microsoft.Cci.PEFileData.wellKnownTypes">
            <summary>
            Type def tokens for the "well known" types. Only non null if the PE file contains the "core" .NET library which defines System.Object.
            The types are: System.Object, System.String, System.ValueType, System.Enum, System.Array, System.Boolean, System.Void, System.Char, System.SByte
            System.Byte, System.UInt16, System.Int32, System.UInt32, System.Int64, System.UInt64, System.Single, System.Double, System.IntPtr, System.UIntPtr,
            System.MarshalByRefObject, System.MultiCastDelegate, System.Nullable, System.__Canon, System.Runtime.Remoting.Proxies.__TransparentProxy
            System.__ComObject, System.ContextBoundObject.
            </summary>
        </member>
        <member name="F:Microsoft.Cci.PEFileData.offsetToMethodDefTable">
            <summary>
            The offset from the start of the metadata tables to the first row of the first MethodDef table.
            </summary>
        </member>
        <member name="F:Microsoft.Cci.PEFileData.methodDefRecordSize">
            <summary>
            The size of a row of the MethodDef table.
            </summary>
        </member>
        <member name="F:Microsoft.Cci.PEFileData.methodDefCount">
            <summary>
            The number of rows in the MethodDef table.
            </summary>
        </member>
        <member name="F:Microsoft.Cci.PEFileData.offsetToFieldRvaTable">
            <summary>
            The offset from the start of the metadata tables, to the first row of the FieldRVA table.
            </summary>
        </member>
        <member name="F:Microsoft.Cci.PEFileData.fieldRvaRecordSize">
            <summary>
            The size of a row of the FieldRVA table.
            </summary>
        </member>
        <member name="F:Microsoft.Cci.PEFileData.fieldRvaCount">
            <summary>
            The number of rows in the FieldRVA table.
            </summary>
        </member>
        <member name="F:Microsoft.Cci.PEFileData.ilImageSize">
            <summary>
            The number of bytes in the PE image (as reported in the NT header).
            </summary>
        </member>
        <member name="F:Microsoft.Cci.PEFileData.targetProcessorArchitecture">
            <summary>
            The particular processor architecture required by the assembly in the PE file being written. Architecture independent assemblies will report X86 as their architecture.
            </summary>
        </member>
        <member name="T:Microsoft.Cci.TargetProcessorArchitecture">
            <summary>
            An enumeration of processor architectures.
            </summary>
        </member>
        <member name="F:Microsoft.Cci.TargetProcessorArchitecture.X86">
            <summary>
            Intel x86
            </summary>
        </member>
        <member name="F:Microsoft.Cci.TargetProcessorArchitecture.X64">
            <summary>
            AMD x64
            </summary>
        </member>
        <member name="F:Microsoft.Cci.TargetProcessorArchitecture.IA64">
            <summary>
            Intel IA64
            </summary>
        </member>
        <member name="F:Microsoft.Cci.TargetProcessorArchitecture.ARM">
            <summary>
            ARM
            </summary>
        </member>
        <member name="F:Microsoft.Cci.PeWriterInternal.ReferenceIndexer.typeReferenceNeedsToken">
            <summary>
            True if the type reference is traversed from a location that needs a token for the type reference.
            </summary>
        </member>
    </members>
</doc>
